Controlling device controlling method

ABSTRACT

Controllers (PID 1  to PIDn) perform control so that the controlled variables of first to n-th control loops may agree with their preset values. A step response progress calculating section (C_R 1 ) calculates the progress α 1  of the step response of the first control loop where the variation of the controlled variable is the slowest. Control loop internal preset value calculating sections (C_S 2  to C_Sn) correct the preset values of the second to n-th control loops according to the progress α 1  of the step response so that the controlled variables of the second to n-th control loops vary synchronously with the controlled variable of the first control loop and give the corrected preset values to the controllers (PID 2  to PIDn).

TECHNICAL FIELD

[0001] The present invention relates to a controlling device having aplurality of controllers which perform control so that the controlledvariables of a plurality of control loops agree with their preset valuesand, more particularly, to a controlling device and controlling methodcapable of realizing energy saving by reducing the settling standbytimes of controllers except the slowest control loop where the variationof the controlled variable is the slowest.

[0002] Apparatuses (e.g., a semiconductor manufacturing apparatus usingan electric heater as an actuator) in which one device incorporates aplurality of loops of a control system have conventionally been known.In this apparatus, the controllers of the respective control loops areindependently operated.

[0003] The controlled variables of the control loops do not always varyat the same speed. With a speed difference between variations in thecontrolled variables of the control loops, the responses of controlloops except the slowest control loop exhibiting the slowest variationbecome faster than the response of the slowest control loop. Whilemaintaining the settling state, the controllers of the control loopsexcept the slowest control loop must wait until the response of theslowest control loop is completed. These controllers require a settlingstandby time during which the controllers stand by while maintaining thesettling state upon the completion of the response. The controllerssuffer an increase in energy consumption by the settling standby time.

DISCLOSURE OF INVENTION

[0004] The present invention has been made to overcome the conventionaldrawbacks, and has as its object to provide a controlling device andcontrolling method capable of realizing energy saving by reducing thesettling standby times of controllers except the slowest control loop.

[0005] According to the present invention, there is provided acontrolling device comprising a first controller (PID1) which performscontrol so as to make a controlled variable of a first control loopagree with a preset value, at least one remaining controller (PID2-PIDn)which performs control so as to make a controlled variable of at leastone remaining control loop where variation of the controlled variable ishigher than in the first control loop agree with a preset value, a stepresponse progress calculating section (C_R1) which calculates a stepresponse progress (α1) of the first control loop, and a control loopinternal preset value calculating section (C_S2-C_Sn) which is arrangedfor each remaining controller, corrects the preset value of acorresponding remaining control loop on the basis of the step responseprogress so as to make the controlled variable of the correspondingremaining control loop vary synchronously with the controlled variableof the first control loop, and gives the corrected preset value to theremaining controller.

[0006] According to the present invention, there is provided acontrolling device comprising a plurality of controllers (PID1-PIDn)which perform control so as to make controlled variables of a pluralityof control loops agree with preset values, a plurality of step responseprogress calculating sections (C_R1a-C_Rna) which are arranged for therespective controllers and calculate step response progresses (α1-αn) ofthe corresponding control loops, a slowest step response progresscalculating section (C_Rm) which selects the slowest progress (αmin)among the step response progresses calculated by the step responseprogress calculating sections, and control loop internal preset valuecalculating sections (C_S1a-C_Sna) which are arranged for the respectivecontrollers, correct the preset values of the corresponding controlloops on the basis of the slowest progress so as to make the controlledvariables of the corresponding control loops vary synchronously with theslowest-progress controlled variable, and give the corrected presetvalues to the corresponding controllers.

[0007] According to the present invention, there is provided acontrolling method in a controlling device having a plurality ofcontrollers which perform control so as to make controlled variables ofa plurality of control loops agree with preset values, comprising thesteps of calculating a step response progress of a first control loopwhere variation of the controlled variable is the slowest, andcorrecting the preset values of the remaining control loops on the basisof the step response progress so as to make the controlled variables ofthe remaining control loops except the first control loop varysynchronously with the controlled variable of the first control loop,thereby giving the corrected preset values to the correspondingcontrollers.

[0008] According to the present invention, there is provided acontrolling method comprising the steps of calculating step responseprogresses of the control loops, selecting the slowest progress amongthe calculated step response progresses, and correcting the presetvalues of the control loops on the basis of the slowest progress so asto make the controlled variables of the control loops vary synchronouslywith the slowest-progress controlled variable, thereby giving thecorrected preset values to the controllers.

BRIEF DESCRIPTION OF DRAWINGS

[0009]FIG. 1 is a block diagram showing the arrangement of a controllingdevice according to the first embodiment of the present invention;

[0010]FIG. 2 is a flow chart for explaining the operation of thecontrolling device in FIG. 1;

[0011]FIG. 3 is a flow chart for explaining the operation of thecontrolling device in FIG. 1;

[0012]FIG. 4 shows views of an example of the control operation of aconventional controlling device;

[0013]FIG. 5 shows views of an example of the control operation of thecontrolling device in FIG. 1;

[0014]FIG. 6 is a block diagram showing the arrangement of a controllingdevice according to the second embodiment of the present invention;

[0015]FIG. 7 is a flow chart for explaining the operation of thecontrolling device in FIG. 6;

[0016]FIG. 8 is a flow chart for explaining the operation of thecontrolling device in FIG. 6; and

[0017]FIG. 9 shows views of an example of the control operation of thecontrolling device in FIG. 6.

BEST MODE OF CARRYING OUT THE INVENTION

[0018] [First Embodiment]

[0019] Preferred embodiments of the present invention will be describedin detail below. FIG. 1 is a block diagram showing the arrangement of acontrolling device according to the first embodiment of the presentinvention. The controlling device in FIG. 1 comprises first to n-thcontrollers PID1 to PIDn which perform control so that the controlledvariables of first to n-th (n is an integer of 2 or more) control loopsagree with their preset values, a step response progress calculatingsection C_R1 which calculates the step response progress of the firstcontrol loop where the variation of the controlled variable is theslowest, and control loop internal preset value calculating sectionsC_S2 to C_Sn which are arranged for the controllers PID2 to PIDn exceptthe first controller PID1 of the first. control loop, correct the presetvalues of the second to n-th control loops on the basis of the stepresponse progress so that the controlled variables of the second to n-thcontrol loops vary synchronously with the controlled variable of thefirst control loop, and give the corrected preset values to thecontrollers PID2 to PIDn.

[0020] The first control loop is made up of the first controller PID1and an object Proc1 to be controlled; the second control loop, thesecond controller PID2 and an object Proc2 to be controlled; the thirdcontrol loop, the third controller PID3 and an object Pro3 to becontrolled; and the n-th control loop, the n-th controller PIDn and anobject Procn to be controlled

[0021] The first embodiment can be applied to a plurality of loops whencontrol loops operate as independent control systems in an apparatus(semiconductor manufacturing apparatus or the like) in which one deviceincorporates the loops of a plurality of control systems thatsimultaneously perform step response such as start-up, and when thetimes required up to the completion of the step response differ betweenthe control loops. Especially, the first embodiment can be applied whena control loop (first control loop) where the variation of thecontrolled variable is the slowest is grasped in advance.

[0022] The operation of the controlling device according to the firstembodiment will be explained. FIGS. 2 and 3 are flow charts showing theoperation of the controlling device in FIG. 1.

[0023] The step response progress calculating section C_R1 reduces thenoise of a controlled variable PV1 by performing noise processing givenby the following transfer function expression to the controlled variablePV1 of the object Proc1 of the first control loop that is measured by asensor (not shown) (step 101):

PV1*={1/(1+Tfs)}PV1  (1)

[0024] In equation (1), PV* is the controlled variable after noiseprocessing, and Tf is the time constant of the noise filter. Noiseprocessing corresponding to a low-pass filter can reduce the noise ofthe controlled variable PV1. An example of the noise of the controlledvariable PV1 is measurement noise of the sensor (not shown) whichmeasures the controlled variable PV1.

[0025] The step response progress calculating section C_R1 checkswhether any one of external preset values SP1x, SP2x, SP3x, . . . , SPnxset for the first, second, third, . . . , n-th control loops has greatlybeen changed from a corresponding one of predetermined values dSP1,dSP2, dSP3, . . . , dSPn designated in advance (step 104):

SPkx>SPkx′+dSPk(k=1, 2, 3, . . . , n)  (2)

SPkx<SPkx′−dSPk(k=1, 2, 3, . . . , n)  (3)

[0026] In inequalities (2) and (3), SPkx′ is the external preset valueof the k-th control loop before one control period.

[0027] If inequality (2) or (3) is established, i.e., if the externalpreset value SPkx of the k-th (k=1, 2, 3, . . . , n) control loop duringthe current control period is larger than the sum of the external presetvalue SPkx′ before one control period and a predetermined value dSPk, orif the external preset value SPkx is smaller than the difference of thepredetermined value dSPk from the external preset value SPkx′ before onecontrol period, the step response progress calculating section C_R1determines that the change amount of the external preset value SPkx islarger than the predetermined value dSPk. The step response progresscalculating section C_R1 then sets the current control period as thestart of the step response (YES in step 104).

[0028] If YES in step 104, the step response progress calculatingsection C_R1 sets the noise processing controlled variable PV1* of thefirst control loop during the current control period as a controlledvariable PV1a of the first control loop before the start of the stepresponse, sets the external preset value SP1x during the current controlperiod as a preset value SP1b of the first control loop after the startof the step response, and resets step response progress α1 of the firstcontrol loop to 0 (step 105). The controlled variable PV1* is set as thecontrolled variable PV1a before the start of the step response becausethe controlled variable PV1* represents the response of the object Proc1with respect to a manipulated variable output MV1 from the controllerPID1 before the current control period.

[0029] In the first control period after the start of the operation, thestep response progress calculating section C_R1 executes initializationprocessing without performing processes in steps 104 and 105 (steps 102and 103). More specifically, the step response progress calculatingsection C_R1 sets the noise processing controlled variable PV1* duringthe current control period as the initial value of the controlledvariable PV1a, sets the external preset value SP1x during the currentcontrol period as the initial value of the preset value SP1b, and resetsthe step response progress α1 to 0.

[0030] The step response progress calculating section C_R1 calculatesthe step response progress α1 of the first control loop (step 106). Thestep response progress α1 is a real number of Δα to 1. As the stepresponse progress α1 is closer to 1, the step response progresses more.Δα represents a step response progress correction amount (e.g., 0.05).

[0031] If the controlled variable PV1a is equal to the preset valueSP1b, the step response progress calculating section C_R1 sets the stepresponse progress α1 to 1. If the controlled variable PV1a is not equalto the preset value SP1b, the step response progress calculating sectionC_R1 calculates the step response progress a using the controlledvariable PV1a, preset value SP1b, and noise processing controlledvariable PV1*:

α1=(PV1*−PV1a)/(SP1b−PV1a)+Δα  (4)

[0032] If the calculated step response progress a is smaller than thestep response progress α1′ before one control period, the step responseprogress calculating section C_R1 sets the step response progress α1′before one control period as the step response progress α1 during thecurrent control period. If the calculated step response progress α1 islarger than 1, the step response progress calculating section C_R1 setsthe step response progress α1 during the current control period to 1.Note that in the first control period, α1′ is 0. Thus, the process instep 106 ends.

[0033] Noise processing is performed to the controlled variable PV1 instep 101 in order to accurately calculate the step response progress α1in step 106. If the controlled variable PV1 contains a noise component,an error is generated in the calculation of the step response progressα1.

[0034] The second control loop internal preset value calculating sectionC_S2 reduces the noise of the controlled variable PV2 by performingnoise processing given by the following transfer function expression tothe controlled variable PV2 of the object Proc2 of the second controlloop that is measured by the sensor (not shown) (step 107):

PV2*={1/(1+Tfs)}PV2  (5)

[0035] In equation (5), PV2* is the controlled variable after noiseprocessing.

[0036] The second control loop internal preset value calculating sectionC_S2 checks whether any one of the external preset values SP1x, SP2x,SP3x, . . . , SPnx set for the first, second, third, . . . , n-thcontrol loops has greatly been changed from a corresponding one of thepredetermined values dSP1, dSP2, dSP3, . . . , dSPn designated inadvance (step 110).

[0037] If inequality (2) or (3) is established, the second control loopinternal preset value calculating section C_S2 determines that thechange amount of the external preset value SPkx (k=1, 2, 3, . . . , n)is larger than the predetermined value dSPk. The second control loopinternal preset value calculating section C_S2 then sets the currentcontrol period as the start of the step response (YES in step 110).

[0038] If YES in step 110, the second control loop internal preset valuecalculating section C_S2 sets the noise processing controlled variablePV2* of the second control loop during the current control period as acontrolled variable PV2a of the second control loop before the start ofthe step response, and sets the external preset value SP2x during thecurrent control period as a preset value SP2b of the second control loopafter the start of the step response (step 111).

[0039] In the first control period after the start of the operation, thesecond control loop internal preset value calculating section C_S2executes initialization processing without performing processes in steps110 and 111 (steps 108 and 109). More specifically, the second controlloop internal preset value calculating section C_S2 sets the noiseprocessing controlled variable PV2* during the current control period asthe initial value of the controlled variable PV2a, sets the externalpreset value SP2x during the current control period as the initial valueof the preset value SP2b, and sets the controlled variable PV2a as theinitial value of an internal preset value SP2.

[0040] The second control loop internal preset value calculating sectionC_S2 calculates the internal preset value SP2 of the second control loop(step 112):

SP2=(SP2′Tx+SP2*dT)/(Tx+dT)  (6)

[0041] SP2′ represents the internal preset value SP2 of the secondcontrol loop before one control period. In the first control period, thecontrolled variable PV2a is used as an initial value. Tx represents theshift time and is, e.g., Tx=2Tf to 5Tf, dT represents the controlperiod, and SP2* represents the internal preset value reference of thesecond control loop and is given by

SP2*=(SP2b−PV2a)α1+PV2a  (7)

[0042] The process in step 112 ends. Noise processing is performed tothe controlled variable PV2 in step 107 in order to accurately calculatethe internal preset value SP2 in step 112.

[0043] The third control loop internal preset value calculating sectionC_S3 reduces the noise of the controlled variable PV3 by performingnoise processing given by the following transfer function expression tothe controlled variable PV3 of the object Proc3 of the third controlloop that is measured by the sensor (not shown) (step 113):

PV3*={1/(1+Tfs)}PV3  (8)

[0044] In equation (8), PV3* is the controlled variable after noiseprocessing.

[0045] The third control loop internal preset value calculating sectionC_S3 checks whether inequality (2) or (3) is established (step 116). Ifinequality (2) or (3) is established and YES in step 116, the thirdcontrol loop internal preset value calculating section C_S3 sets thenoise processing controlled variable PV3* of the third control loopduring the current control period as a controlled variable PV3a of thethird control loop before the start of the step response, and sets theexternal preset value SP3x during the current control period as a presetvalue SP3b of the third control loop after the start of the stepresponse (step 117).

[0046] In the first control period after the start of the operation, thethird control loop internal preset value calculating section C_S3executes initialization processing without performing processes in steps116 and 117 (steps 114 and 115). More specifically, the third controlloop internal preset value calculating section C_S3 sets the noiseprocessing controlled variable PV3* during the current control period asthe initial value of the controlled variable PV3a, sets the externalpreset value SP3x during the current control period as the initial valueof the preset value SP3b, and sets the controlled variable PV3a as theinitial value of an internal preset value SP3.

[0047] The third control loop internal preset value calculating sectionC_S3 calculates the internal preset value SP3 of the third control loop(step 118):

SP3=(SP3′Tx+SP3*dT)/(Tx+dT)  (9)

[0048] SP3′ represents the internal preset value SP3 of the thirdcontrol loop before one control period. In the first control period, thecontrolled variable PV3a is used as an initial value. SP3* representsthe internal preset value reference of the third control loop and isgiven by

SP3*=(SP3b−PV3a)α1+PV3a  (10)

[0049] In this way, the same processes as in steps 107 to 112 or 113 to118 are repeated. After the (n−1)-th control loop internal preset valuecalculating section C_Sn−1 (not shown) calculates an internal presetvalue SPn−1, the n-th control loop internal preset value calculatingsection C_Sn reduces the noise of the controlled variable PVn byperforming noise processing given by the following transfer functionexpression to the controlled variable PVn of the object Procn of then-th control loop that is measured by the sensor (not shown) (step 151):

PVn*={1/(1+Tfs)}PVn  (11)

[0050] In equation (11), PVn* is the controlled variable after noiseprocessing.

[0051] The n-th control loop internal preset value calculating sectionC_Sn checks whether inequality (2) or (3) is established (step 154). Ifinequality (2) or (3) is established and YES in step 154, the n-thcontrol loop internal preset value calculating section C_Sn sets thenoise processing controlled variable PVn* of the n-th control loopduring the current control period as a controlled variable PVna of then-th control loop before the start of the step response, and sets theexternal preset value SPnx during the current control period as a presetvalue SPnb of the n-th control loop after the start of the step response(step 155).

[0052] In the first control period after the start of the operation, then-th control loop internal preset value calculating section C_Snexecutes initialization processing without performing processes in steps154 and 155 (steps 152 and 153). More specifically, the n-th controlloop internal preset value calculating section C_Sn sets the noiseprocessing controlled variable PVn* during the current control period asthe initial value of the controlled variable PVna, sets the externalpreset value SPnx during the current control period as the initial valueof the preset value SPnb, and sets the controlled variable PVna as theinitial value of an internal preset value SPn.

[0053] The n-th control loop internal preset value calculating sectionC_Sn calculates the internal preset value SPn of the n-th control loop(step 156):

SPn=(SPn′Tx+SPn*dT)/(Tx+dT)  (12)

[0054] SPn′ represents the internal preset value SPn of the n-th controlloop before one control period. In the first control period, thecontrolled variable PVna is used as an initial value. SPn* representsthe internal preset value reference of the n-th control loop and isgiven by

SPn*=(SPnb−PVna)α1+PVna  (13)

[0055] The first controller PID1 calculates the manipulated variableoutput MV1 by executing a PID calculation given by a transfer functionexpression (step 157):

MV1=Kg1{1+1/(Ti1s)+Td1s}(SP1x−PV1)  (14)

[0056] In equation (14), Kg1, Ti1, and Td1 are the proportional gain,integral time, and derivative time of the controller PID1. The firstcontroller PID1 outputs the calculated manipulated variable output MV1to the object Proc1.

[0057] The second controller PID2 calculates a manipulated variableoutput MV2 by executing a PID calculation given by the followingtransfer function expression using the internal preset value SP2 outputfrom the second control loop internal preset value calculating sectionC_S2 (step 158):

MV2=Kg2{1+1/(Ti2s)+Td2s}(SP2−PV2)  (15)

[0058] In equation (15), Kg2, Ti2, and Td2 are the proportional gain,integral time, and derivative time of the controller PID2. The secondcontroller PID2 outputs the calculated manipulated variable output MV2to the object Proc2.

[0059] The third controller PID3 calculates a manipulated variableoutput MV3 by executing the following PID calculation using the internalpreset value SP3 output from the third control loop internal presetvalue calculating section C_S3 (step 159):

MV3=Kg3{1+1/(Ti3s)+Td3s}(SP3−PV3)  (16)

[0060] In equation (16), Kg3, Ti3, and Td3 are the proportional gain,integral time, and derivative time of the controller PID3. The thirdcontroller PID3 outputs the calculated manipulated variable output MV3to the object Proc3.

[0061] Manipulated variable outputs are sequentially calculated in thisfashion. After the (n−1)-th controller PIDn−1 (not shown) calculates amanipulated variable output MVn−1, the n-th controller PIDn calculates amanipulated variable output MVn by executing the following PIDcalculation using the internal preset value SPn output from the n-thcontrol loop internal preset value calculating section C_Sn (step 190):

MVn=Kgn{1+1/(Tins)+Tdns}(SPn−PVn)  (17)

[0062] In equation (17), Kgn, Tin, and Tdn are the proportional gain,integral time, and derivative time of the controller PIDn. The n-thcontroller PIDn outputs the calculated manipulated variable output MVnto the object Procn.

[0063] Steps 101 to 190 are defined as processes in one control period,and the processes in steps 101 to 190 are repeated every control period.

[0064] In the first embodiment, the external preset values SP1x, SP2x,SP3x, . . . , SPnx are almost simultaneously changed by an externaloperation to a control system of two or more loops. After that, the stepresponse progressα1 of the slowest-variation controlled variable (firstcontrol loop) grasped in advance is calculated by the step responseprogress calculating section C_R1. The calculation result is output tothe internal preset value calculating sections C_S2 to C_Sn of theremaining control loops.

[0065] The internal preset value calculating sections C_S2 to C_Sncalculate the internal preset values SP2 to SPn corrected to suppressthe step responses of the second to n-th control loops on the basis ofthe step response progress α1 so that the progresses of the controlledvariables PV2 to PVn of the second to n-th control loops aresynchronized with the slowest-variation controlled variable PV1 of thefirst control loop.

[0066] The controller PID1 of the slowest-variation first control loopcalculates the manipulated variable output MV1 on the basis of theoriginal external preset value SP1x set by the operator.

[0067] The controllers PID2 to PIDn of the second to n-th control loopscalculate the manipulated variable outputs MV2 to MVn on the basis ofthe corrected internal preset values SP2 to SPn.

[0068] This arrangement can prevent the step responses of control loopsexcept the slowest-variation first control loop from progressing muchfaster than the step response of the first control loop when theexternal preset values SP1x to SPnx of the first to n-th control loopsare almost simultaneously changed. The controllers PID2 to PIDn exceptthat of the first control loop can eliminate the settling standby timeduring which the controllers stand by while maintaining the settlingstate upon the completion of the step response.

[0069] When the controllers PID1 to PIDn control, e.g., heaters toperform temperature rise control, the controllers PID2 to PIDn in aconventional controlling device must stand by while maintaining thehigh-temperature settling state until at least the step response of thefirst control loop is completed, resulting in large energy consumption.To the contrary, in the controlling device of the first embodiment, thesettling standby times of the controllers PID2 to PIDn can beeliminated, the energy consumption can be reduced, and energy saving canbe realized.

[0070]FIG. 4 shows views of an example of the control operation of aconventional controlling device in which the controllers PID1 to PIDn ofthe control loops are independently operated. FIG. 5 shows views of anexample of the control operation of the controlling device according tothe first embodiment. FIGS. 4 and 5 show the simulation results ofcalculating the controlled variables PV1, PV2, PV3, . . . , PVn when theexternal preset value SP1x of the first control loop is changed fromSP1a to SP1b, the external preset value SP2x of the second control loopis changed from SP2a to SP2b, the external preset value SP3x of thethird control loop is changed from SP3a to SP3b, and the external presetvalue SPnx of the n-th control loop is changed from SPna to SPnb. FIGS.4 and 5 show only the first to third control loops. In the examples ofFIGS. 4 and 5, the first control loop is a loop where the variation ofthe controlled variable is the slowest.

[0071] As shown in FIG. 4, in the conventional controlling device, thecontrolled variables PV2, PV3, . . . , PVn of the second, third, . . . ,n-th control loops reach SP2b, SP3b, . . . , SPnb before the controlledvariable PV1 of the first control loop reaches the preset value SP1b.Settling standby times T_w2, T_w3, . . . , T_wn are generated in thecontrollers PID2, PID3, . . . , PIDn of the second, third, . . . , n-thcontrol loops.

[0072] In the first embodiment, as shown in FIG. 5, the controlledvariables PV2, PV3, . . . , PVn of the second, third, . . . , n-thcontrol loops are varied in synchronism with the variation of thecontrolled variable PV1 of the first control loop. Hence, no settlingstandby time is generated in the controllers PID2, PID3, . . . , PIDn ofthe second, third, . . . , n-th control loops.

[0073] [Second Embodiment]

[0074]FIG. 6 is a block diagram showing the arrangement of a controllingdevice according to the second embodiment of the present invention. Thecontrolling device in FIG. 6 comprises first to n-th controllers PID1 toPIDn, step response progress calculating sections C_R1a to C_Rna whichare arranged for the controllers PID1 to PIDn and calculate the stepresponse progresses of the first to n-th control loops, a slowest stepresponse progress calculating section C_Rm which selects the slowestprogress from the step response progresses calculated by the stepresponse progress calculating sections C_R1a to C_Rna, and control loopinternal preset value calculating sections C_S1a to C_Sna which arearranged for the controllers PID1 to PIDn, correct the preset values ofthe first to n-th control loops on the basis of the slowest progress sothat the controlled variables of the first to n-th control loops varysynchronously with the controlled variable for the slowest progress, andgive the corrected preset values to the controllers PID1 to PIDn.

[0075] The first embodiment is applied to a case in which a control loopwhere the variation of the controlled variable is the slowest is graspedin advance. The second embodiment can be applied to a case in which acontrol loop where the variation of the controlled variable is theslowest is not grasped in advance.

[0076] The operation of the controlling device according to the secondembodiment will be explained. FIGS. 7 and 8 are flow charts showing theoperation of the controlling device in FIG. 6.

[0077] Processes in steps 201 to 206 by the first controlled variablestep response progress calculating section C_R1a are almost the same asprocesses in steps 101 to 106 by the first controlled variable stepresponse progress calculating section C_R1 described in the firstembodiment, and a detailed description thereof will be omitted. Thesecond embodiment is different from the first embodiment in that thestep response progress calculating section C_R1a outputs the presetvalue SP1b and controlled variable PV1a to the first control loopinternal preset value calculating section C_S1a.

[0078] The second controlled variable step response progress calculatingsection C_R2a generates a noise processing controlled variable PV2* byperforming noise processing given by the transfer function expression ofequation (5) to the controlled variable PV2 of an object Proc2 of thesecond control loop that is measured by a sensor (not shown) (step 207).

[0079] The second controlled variable step response progress calculatingsection C_R2a checks whether any one of the external preset values SP1x,SP2x, SP3x, . . . , SPnx set for the first, second, third, . . . , n-thcontrol loops has greatly been changed from a corresponding one of thepredetermined values dSP1, dSP2, dSP3, . . . , dSPn designated inadvance (step 210).

[0080] If inequality (2) or (3) is established, the second controlledvariable step response progress calculating section C_R2a determinesthat the change amount of the external preset value SPkx (k=1, 2, 3, . .. , n) is larger than the predetermined value dSPk. The secondcontrolled variable step response progress calculating section C_R2athen sets the current control period as the start of the step response(YES in step 210).

[0081] If YES in step 210, the second controlled variable step responseprogress calculating section C_R2a sets the noise processing controlledvariable PV2* of the second control loop during the current controlperiod as the controlled variable PV2a of the second control loop beforethe start of the step response, sets the external preset value SP2xduring the current control period as the preset value SP2b of the secondcontrol loop after the start of the step response, and resets the stepresponse progress α2 of the second control loop to 0 (step 211).

[0082] In the first control period after the start of the operation, thesecond controlled variable step response progress calculating sectionC_R2a executes initialization processing without performing processes insteps 210 and 211 (steps 208 and 209). More specifically, the secondcontrolled variable step response progress calculating section C_R2asets the noise processing controlled variable PV2* during the currentcontrol period as the initial value of the controlled variable PV2a,sets the external preset value SP2x during the current control period asthe initial value of the preset value SP2b, and resets the step responseprogress α2 to 0.

[0083] The second controlled variable step response progress calculatingsection C_R2a calculates the step response progress α2 of the secondcontrol loop (step 212). If the controlled variable PV2a is equal to thepreset value SP2b, the second controlled variable step response progresscalculating section C_R2a sets the step response progress α2 to 1. Ifthe controlled variable PV2a is not equal to the preset value SP2b, thesecond controlled variable step response progress calculating sectionC_R2a calculates the step response progress α2 using the controlledvariable PV2a, preset value SP2b, and noise processing controlledvariable PV2*:

α2=(PV2*−PV2a)/(SP2b−PV2a)+Δα  (18)

[0084] If the calculated step response progress α2 is smaller than thestep response progress α2′ before one control period, the secondcontrolled variable step response progress calculating section C_R2asets the step response progress α2′ before one control period as thestep response progress α2 during the current control period. If thecalculated step response progress α2 is larger than 1, the secondcontrolled variable step response progress calculating section C_R2asets the step response progress α2 during the current control periodto 1. Note that in the first control period, α2′ is 0. Thus, the processin step 212 ends.

[0085] The third controlled variable step response progress calculatingsection C_R3a generates a noise processing controlled variable PV3* byperforming noise processing given by the transfer function expression ofequation (8) to the controlled variable PV3 of an object Proc3 of thethird control loop that is measured by the sensor (not shown) (step213).

[0086] The third controlled variable step response progress calculatingsection C_R3a checks whether any one of the external preset values SP1x,SP2x, SP3x, . . . , SPnx set for the first, second, third, . . . , n-thcontrol loops has greatly been changed from a corresponding one of thepredetermined values dSP1, dSP2, dSP3, . . . , dSPn designated inadvance (step 216).

[0087] If inequality (2) or (3) is established, the third controlledvariable step response progress calculating section C_R3a determinesthat the change amount of the external preset value SPkx (k=1, 2, 3, . .. , n) is larger than the predetermined value dSPk. The third controlledvariable step response progress calculating section C_R3a then sets thecurrent control period as the start of the step response (YES in step216).

[0088] If YES in step 216, the third controlled variable step responseprogress calculating section C_R3a sets the noise processing controlledvariable PV3* of the third control loop during the current controlperiod as the controlled variable PV3a of the third control loop beforethe start of the step response, sets the external preset value SP3xduring the current control period as the preset value SP3b of the thirdcontrol loop after the start of the step response, and resets the stepresponse progress α3 of the third control loop to 0 (step 217).

[0089] In the first control period after the start of the operation, thethird controlled variable step response progress calculating sectionC_R3a executes initialization processing without performing processes insteps 216 and 217 (steps 214 and 215). More specifically, the thirdcontrolled variable step response progress calculating section C_R3asets the noise processing controlled variable PV3* during the currentcontrol period as the initial value of the controlled variable PV3a,sets the external preset value SP3x during the current control period asthe initial value of the preset value SP3b, and resets the step responseprogress α3 to 0.

[0090] The third controlled variable step response progress calculatingsection C_R3a calculates the step response progress α3 of the thirdcontrol loop (step 218). If the controlled variable PV3a is equal to thepreset value SP3b, the third controlled variable step response progresscalculating section C_R3a sets the step response progress α3 to 1. Ifthe controlled variable PV3a is not equal to the preset value SP3b, thethird controlled variable step response progress calculating sectionC_R3a calculates the step response progress α3 using the controlledvariable PV3a, preset value SP3b, and noise processing controlledvariable PV3*:

α3=(PV3*−PV3a)/(SP3b−PV3a)+Δα  (19)

[0091] If the calculated step response progress α3 is smaller than thestep response progress α3′ before one control period, the thirdcontrolled variable step response progress calculating section C_R3asets the step response progress α3′ before one control period as thestep response progress α3 during the current control period. If thecalculated step response progress α3 is larger than 1, the thirdcontrolled variable step response progress calculating section C_R3asets the step response progress α3 during the current control periodto 1. Note that in the first control period, α3′ is 0. Thus, the processin step 218 ends.

[0092] In this manner, the same processes as in steps 207 to 212 or 213to 218 are repeated. After the (n−1)-th controlled variable stepresponse progress calculating section C_Rn−1a (not shown) calculates thestep response progress αn−1 of the (n−1)-th control loop, the n-thcontrolled variable step response progress calculating section C_Rnagenerates a noise processing controlled variable PVn* by performingnoise processing given by the transfer function expression of equation(11) to the controlled variable PVn of an object Procn of the n-thcontrol loop that is measured by the sensor (not shown) (step 251).

[0093] The n-th controlled variable step response progress calculatingsection C_Rna checks whether any one of the external preset values SP1x,SP2x, SP3x, . . . , SPnx set for the first, second, third, . . . , n-thcontrol loops has greatly been changed from a corresponding one of thepredetermined values dSP1, dSP2, dSP3, . . . , dSPn designated inadvance (step 254).

[0094] If inequality (2) or (3) is established, the n-th controlledvariable step response progress calculating section C_Rna determinesthat the change amount of the external preset value SPkx (k=1, 2, 3, . .. , n) is larger than the predetermined value dSPk. Then, the n-thcontrolled variable step response progress calculating section C_Rnasets the current control period as the start of the step response (YESin step 254).

[0095] If YES in step 254, the n-th controlled variable step responseprogress calculating section C_Rna sets the noise processing controlledvariable PVn* of the n-th control loop during the current control periodas the controlled variable PVna of the n-th control loop before thestart of the step response, sets the external preset value SPnx duringthe current control period as the preset value SPnb of the n-th controlloop after the start of the step response, and resets the step responseprogress αn of the n-th control loop to 0 (step 255).

[0096] In the first control period after the start of the operation, then-th controlled variable step response progress calculating sectionC_Rna executes initialization processing without performing processes insteps 254 and 255 (steps 252 and 253). More specifically, the n-thcontrolled variable step response progress calculating section C_Rnasets the noise processing controlled variable PVn* during the currentcontrol period as the initial value of the controlled variable PVna,sets the external preset value SPnx during the current control period asthe initial value of the preset value SPnb, and resets the step responseprogress αn to 0.

[0097] The n-th controlled variable step response progress calculatingsection C_Rna calculates the step response progress an of the n-thcontrol loop (step 256). If the controlled variable PVna is equal to thepreset value SPnb, the n-th controlled variable step response progresscalculating section C_Rna sets the step response progress αn to 1. Ifthe controlled variable PVna is not equal to the preset value SPnb, then-th controlled variable step response progress calculating sectionC_Rna calculates the step response progress αn using the controlledvariable PVna, preset value SPnb, and noise processing controlledvariable PVn*:

αn=(PVn*−PVna)/(SPnb−PVna)+Δα  (20)

[0098] If the calculated step response progress αn is smaller than thestep response progress αn′ before one control period, the n-thcontrolled variable step response progress calculating section C_Rnasets the step response progress αn′ before one control period as thestep response progress αn during the current control period. If thecalculated step response progress an is larger than 1, the n-thcontrolled variable step response progress calculating section C_Rnasets the step response progress αn during the current control periodto 1. Note that in the first control period, αn′ is 0. Thus, the processin step 256 ends.

[0099] Thereafter, the slowest step response progress calculatingsection C_Rm calculates the minimum value (slowest controlled variablestep response progress) αmin from the step response progresses α1, α2,α3, . . . , αn of all the first, second, third, . . . , n-th controlloops, and outputs the minimum value αmin to the internal preset valuecalculating sections C_S1a to C_Sna (step 257).

[0100] More specifically, if the step response progress α1 is smallerthan the step response progress α2, the slowest step response progresscalculating section C_Rm sets α1 as the minimum value αmin, or if α1 isequal to or larger than α2, α2 as the minimum value αmin. If the stepresponse progress α3 is smaller than the minimum value αmin, the sloweststep response progress calculating section C_Rm sets α3 as the minimumvalue αmin. Similarly, the slowest step response progress calculatingsection C_Rm repeats the comparison between the minimum value αmin andeach step response progress up to αn, thereby defining the minimum valueαmin.

[0101] The first control loop internal preset value calculating sectionC_S1a calculates the internal preset value SP1 of the first control loop(step 258):

SP1=(SP1′Tx+SP1*dT)/(Tx+dT)  (21)

[0102] SP1′ represents the internal preset value SP1 of the firstcontrol loop before one control period. In the first control period, thecontrolled variable PV1a is used as an initial value. SP1* representsthe internal preset value reference of the first control loop and isgiven by

SP1*=(SP1b−PV1a)αmin+PV1a  (22)

[0103] The second control loop internal preset value calculating sectionC_S2a calculates the internal preset value SP2 of the second controlloop (step 259):

SP2=(SP2′Tx+SP2*dT)/(Tx+dT)  (23)

[0104] SP2′ represents the internal preset value SP2 of the secondcontrol loop before one control period. In the first control period, thecontrolled variable PV2a is used as an initial value. SP2* representsthe internal preset value reference of the second control loop and isgiven by

SP2*=(SP2b−PV2a)αmin+PV2a  (24)

[0105] The third control loop internal preset value calculating sectionC_S3a calculates the internal preset value SP3 of the third control loop(step 260):

SP3=(SP3′Tx+SP3*dT)/(Tx+dT)  (25)

[0106] SP3′ represents the internal preset value SP3 of the thirdcontrol loop before one control period. In the first control period, thecontrolled variable PV3a is used as an initial value. SP3* representsthe internal preset value reference of the third control loop and isgiven by

SP3*=(SP3b−PV3a)αmin+PV3a  (26)

[0107] Internal preset values are similarly calculated. After the(n−1)th control loop internal preset value calculating section C_Sn−1acalculates the internal preset value SPn−1 of the (n−1)th control loop,the n-th control loop internal preset value calculating section C_Snacalculates the internal preset value SPn of the n-th control loop (step290):

SPn=(SPn′Tx+SPn*dT)/(Tx+dT)  (27)

[0108] SPn′ represents the internal preset value SPn of the n-th controlloop before one control period. In the first control period, thecontrolled variable PVna is used as an initial value. SPn* representsthe internal preset value reference of the n-th control loop and isgiven by

SPn*=(SPnb−PVna)αmin+PVna  (28)

[0109] Then, the first controller PID1 calculates the manipulatedvariable output MV1 by executing a PID calculation given by thefollowing transfer function expression using the internal preset valueSP1 output from the first control loop internal preset value calculatingsection C_S1a (step 291):

MV1=Kg1{1+1/(Ti1s)+Td1s}(SP1−PV1)  (29)

[0110] In equation (29), Kg1, Ti1, and Td1 are the proportional gain,integral time, and derivative time of the controller PID1. The firstcontroller PID1 outputs the calculated manipulated variable output MV1to the object Proc1.

[0111] The second controller PID2 calculates the manipulated variableoutput MV2 by executing a PID calculation as given by equation (15)using the internal preset value SP2 output from the second control loopinternal preset value calculating section C_S2a (step 292). The secondcontroller PID2 outputs the calculated manipulated variable output MV2to the object Proc2.

[0112] The third controller PID3 calculates the manipulated variableoutput MV3 by executing a PID calculation as given by equation (16)using the internal preset value SP3 output from the third control loopinternal preset value calculating section C_S3a (step 293). The thirdcontroller PID3 outputs the calculated manipulated variable output MV3to the object Proc3.

[0113] Manipulated variable outputs are sequentially calculated in thisway. After the (n−1)-th controller PIDn−1 (not shown) calculates themanipulated variable output MVn−1, the n-th controller PIDn calculatesthe manipulated variable output MVn by executing a PID calculation asgiven by equation (17) using the internal preset value SPn output fromthe n-th control loop internal preset value calculating section C_Sna(step 320). The n-th controller PIDn outputs the calculated manipulatedvariable output MVn to the object Procn.

[0114] Steps 201 to 320 are defined as processes in one control period,and the processes in steps 201 to 320 are repeated every control period.

[0115] In the second embodiment, the external preset values SP1x, SP2x,SP3x, . . . , SPnx are almost simultaneously changed by an externaloperation to a control system of two or more loops. After that, the stepresponse progresses α1 to αn of the respective control loops arecalculated by the step response progress calculating sections C_R1a toC_Rna. The calculation results are output to the slowest step responseprogress calculating section C_Rm.

[0116] The slowest step response progress calculating section C_Rmcalculates the minimum value, i.e., the slowest step response progressαmin among the step response progresses α1 to αn of the respectivecontrol loops, and outputs the slowest progress αmin to the control loopinternal preset value calculating sections C_S1a to C_Sna.

[0117] The internal preset value calculating sections C_S1a to C_Snacalculate the internal preset values SP1 to SPn corrected to suppressthe step responses of the first to n-th control loops on the basis ofthe slowest progress αmin so that the progresses of the controlledvariables PV1 to PVn of the first to n-th control loops are synchronizedwith the slowest-variation controlled variable of the control loop. Atthis time, the same processing is done to the slowest control loop so asnot to influence the response speed of the slowest control loop. Thecontrollers PID1 to PIDn of the first to n-th control loops calculatethe manipulated variable outputs MV1 to MVn on the basis of thecorrected internal preset values SP1 to SPn.

[0118] This arrangement can prevent the step responses of control loopsexcept the slowest-variation control loop from progressing much fasterthan the step response of the slowest control loop when the externalpreset values SP1x to SPnx of the first to n-th control loops are almostsimultaneously changed. The controllers except that of the slowestcontrol loop can eliminate the settling standby time, realizing energysaving. Especially in the second embodiment, the slowest control loopwhere the variation of the controlled variable is the slowest need notbe grasped in advance. Even when the step response speed changesdepending on the situation and the slowest control loop changes, thecontrol loops can be properly operated.

[0119]FIG. 9 shows views of an example of the control operation of thecontrolling device according to the second embodiment. FIG. 9 shows thesimulation results of calculating the controlled variables PV1, PV2,PV3, . . . , PVn when the external preset value SP1x of the firstcontrol loop is changed from SP1a to SP1b, the external preset valueSP2x of the second control loop is changed from SP2a to SP2b, theexternal preset value SP3x of the third control loop is changed fromSP3a to SP3b, and the external preset value SPnx of the n-th controlloop is changed from SPna to SPnb. FIG. 9 shows only the first to thirdcontrol loops. In the example of FIG. 9, the second control loop is aloop where the variation of the controlled variable is the slowest.

[0120] As is apparent from FIG. 9, when the second embodiment isapplied, the controlled variables PV1, PV3, . . . , PVn of the first,third, . . . , n-th control loops are varied in synchronism with thevariation of the controlled variable PV2 of the second control loopwhere the variation of the controlled variable is the slowest. Nosettling standby time is generated in the controllers PID1, PID3, . . ., PIDn of the first, third, . . . , n-th control loops.

[0121] The first and second embodiments have exemplified n≧4, but thepresent invention can be applied for n≧2.

[0122] In the first and second embodiments, all the external presetvalues are simultaneously changed. However, the present invention is notlimited to this, and the effects of the first embodiment can be obtainedeven when the external preset values of two or more loops including theslowest loop among n loops are changed with a slight timing shift. Inaddition, the effects of the second embodiment can be obtained even whenthe external preset values of two or more arbitrary loops among n loopsare changed with a slight timing shift.

[0123] As has been described above, the present invention is suitablefor a device having a plurality of loops of the control system withinone apparatus.

1. A controlling device characterized by comprising: a first controllerwhich performs control so as to make a controlled variable of a firstcontrol loop agree with a preset value; at least one remainingcontroller which performs control so as to make a controlled variable ofat least one remaining control loop where variation of the controlledvariable is higher than in the first control loop agree with a presetvalue; a step response progress calculating section which calculates astep response progress of the first control loop; and a control loopinternal preset value calculating section which is arranged for eachremaining controller, corrects the preset value of a correspondingremaining control loop on the basis of the step response progress so asto make the controlled variable of said corresponding remaining controlloop vary synchronously with the controlled variable of the firstcontrol loop, and gives the corrected preset value to said remainingcontroller.
 2. A controlling device characterized by comprising: aplurality of controllers which perform control so as to make controlledvariables of a plurality of control loops agree with preset values; aplurality of step response progress calculating sections which arearranged for said respective controllers and calculate step responseprogresses of the corresponding control loops; a slowest step responseprogress calculating section which selects the slowest progress amongthe step response progresses calculated by said step response progresscalculating sections; and control loop internal preset value calculatingsections which are arranged for said respective controllers, correct thepreset values of the corresponding control loops on the basis of theslowest progress so as to make the controlled variables of thecorresponding control loops vary synchronously with the slowest-progresscontrolled variable, and give the corrected preset values to saidcorresponding controllers.
 3. A controlling method in a controllingdevice having a plurality of controllers which perform control so as tomake controlled variables of a plurality of control loops agree withpreset values, characterized by comprising the steps of: calculating astep response progress of a first control loop where variation of thecontrolled variable is the slowest; and correcting the preset values ofthe remaining control loops on the basis of the step response progressso as to make the controlled variables of the remaining control loopsexcept the first control loop vary synchronously with the controlledvariable of the first control loop, thereby giving the corrected presetvalues to the corresponding controllers.
 4. A controlling method in acontrolling device having a plurality of controllers which performcontrol so as to make controlled variables of a plurality of controlloops agree with preset values, characterized by comprising the stepsof: calculating step response progresses of the control loops; selectingthe slowest progress among the calculated step response progresses; andcorrecting the preset values of the control loops on the basis of theslowest progress so as to make the controlled variables of the controlloops vary synchronously with the slowest-progress controlled variable,thereby giving the corrected preset values to the controllers.